草庐IT

JavaScript prototype(原型对象)

全部标签

javascript - Object.assign 保留对原始对象的引用

这个问题在这里已经有了答案:HowdoIcorrectlycloneaJavaScriptobject?(80个答案)关闭7年前。我有方法:exportconstgroupActivities=({activities,tags,images,tickets})=>{if(!activities||!tags){console.error('Musthaveactivitiesandtags');}constgroupActivities=Object.assign({},activities);constgroups=groupByTags({activities:groupActi

javascript - S3 putObject 回调不返回预期的对象

我想在将图像上传到S3后获取文件的链接(或文件名也可以)。我使用以下代码上传并且有效。s3Bucket.putObject(data,function(err,data){if(err){console.log(err);res.send({result:0});}else{res.send({result:1});console.log(data)}});但在回调数据中它只有1个属性,即etag。在文档中明确说明它有其他对象,那么如何获取上传文件的路径? 最佳答案 docs并不意味着对象键将在data回调参数中可用。您可以根据存储

javascript - Syncano Codebox - 调用 API - 解析 JSON - 获取引用 - 保存新对象

我将Syncano用作baas,我试图调用外部API来接收JSON数组。这个JSON需要被解析,然后存储在syncano中。在此之前,我需要从数据库接收引用对象以将其链接到新的团队对象。我成功收到团队(json)数组和引用对象。但是我无法存储新数据,因为只有12-14个团队(必须是18个)被保存。我用promise尝试了这个和那个,但没有成功。任何人都可以建议如何重写代码以存储所有数据?谢谢-这是我目前所拥有的...//TODO:getfromARGSwhenexecutingthiscodeboxvarteamKey=394;varrequestURL='http://api.foo

javascript - 从不同级别的对象中按属性名称获取值

我有一个以下格式的对象,我需要从对象所有级别的Price属性中获取所有值。varo={Id:1,Price:10,Attribute:{Id:1,Price:2,Modifier:{Id:34,Price:33}}};我在考虑LinqToJS和jquery.map()方法,但我希望获得尽可能通用的方法。我试过了,但它只适用于第一级:varkeys=$.map(o,function(value,key){if(key=="Price"){returnvalue;}}); 最佳答案 您可以使用递归函数来测试属性名称的类型及其类型。如果它

javascript - 在javascript中将值设置为__proto_ _` and `原型(prototype)

这个问题在这里已经有了答案:__proto__VS.prototypeinJavaScript(34个答案)关闭6年前。__proto__和prototype有什么区别我看了网上的大部分文章,还是看不懂..据我所理解__proto__是原型(prototype)对象的属性prototype是实际的对象我对么?....为什么只有函数才有原型(prototype)属性?它如何成为一个对象?varfn=function(){};console.dir(fn);输出functionfn()arguments:nullcaller:nulllength:0name:""prototype:Obj

javascript - 如何发出 Map 对象

在服务器端我有这样的东西:constusers=newMap();users.set('id',{name:'name'});//...//thenIemit:io.emit('user_change',users);在客户端我有类似的东西:socket.on('user_change',users=>{for(letuserofusers){userlist.append(`${user.name}`);}});但是users是空的({})。我如何发出Map对象? 最佳答案 socket.io(或任何传输机制)可能使用JSON作为

javascript - 为什么在 Javascript 中属性写入不引用原型(prototype)链?

我已经盯着这个答案看了一段时间,但我无法理解它:https://stackoverflow.com/a/23699009/3658800.总结:只有属性读取搜索原型(prototype)链,而不是写入。所以当你设置myObject.prop='123';它不查找链,但是当你设置myObject.myThing.prop='123';在那个写操作中有一个微妙的读操作,它试图在写入它的prop之前查找myThing。这就是为什么从子对象写入object.properties会得到父对象的原因。我基本上是在要求某人详细说明这个“微妙的阅读”操作。myObject.myThing是否首先求值,

javascript - jQuery 对象数据结构

我正在尝试创建一个可以支持方法链的迷你jQuery克隆。到目前为止,我已经想出了这段代码:var$=(function(){varelements=[];functionmethodOne(){console.log('Method1');returnthis;}functionmethodTwo(){console.log('Method2');returnthis;}return{methodOne:methodOne,methodTwo:methodTwo};}());在页面加载时,$变量被IIFE返回的jQuery克隆对象填充。我的问题是,如何使$对象作为函数直接调用,同时仍然

Javascript:使用扩展运算符合并两个对象

vara={1:{687:{name:'test1'}}}varb={1:{689:{name:'test2'}}}varc={...a,...b}console.log(c)我期待的结果是:{1:{687:{name:'test1'},689:{name:'test2'}}}但是,它是:{1:{689:{name:'test2'}}}我是不是用错了传播运算符?合并两个对象的最有效方法是什么?我创建了一个函数来遍历对象中的每个键,它可以工作,但我认为这不是写入方式。Object.assign({},a,b)也返回相同的结果(第一个结果,我不想要)。我完成了问题HowcanImergep

javascript - {} 和对象有什么区别?

最近,我对{}和Object之间的区别感到困惑。有时,{}会解决我的问题,有时,它不能,我切换到Object。我真的不知道为什么。我做了一些测试,希望它能给你一些提示。constt:Array=[{label:'1'}];constarr:Array=t;//errorconstarr2:Array=t;//pass 最佳答案 {}是newObject()的别名。所以您可以说Object是一个类,而{}是该类的一个实例。你可以在这里看到:console.log(JSON.stringify(newObject())==JSON.st